From e307a35c33056dec559874829f4e0debd85a2bd0 Mon Sep 17 00:00:00 2001 From: Alexander Larsson Date: Mon, 20 Mar 2017 10:52:58 +0100 Subject: [PATCH] gsk: Take scale factor into account when setting up the gl scissor --- gsk/gskglrenderer.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/gsk/gskglrenderer.c b/gsk/gskglrenderer.c index deeabbceab..d323667256 100644 --- a/gsk/gskglrenderer.c +++ b/gsk/gskglrenderer.c @@ -908,8 +908,13 @@ gsk_gl_renderer_setup_render_mode (GskGLRenderer *self) GdkDrawingContext *context = gsk_renderer_get_drawing_context (GSK_RENDERER (self)); GdkWindow *window = gsk_renderer_get_window (GSK_RENDERER (self)); GdkRectangle extents; + int scale_factor = gsk_renderer_get_scale_factor (GSK_RENDERER (self)); + cairo_region_get_extents (gdk_drawing_context_get_clip (context), &extents); - glScissor (extents.x, gdk_window_get_height (window) - extents.height - extents.y, extents.width, extents.height); + + glScissor (extents.x * scale_factor, + (gdk_window_get_height (window) - extents.height - extents.y) * scale_factor, + extents.width * scale_factor, extents.height * scale_factor); glEnable (GL_SCISSOR_TEST); break; } -- 2.30.2